package com.ptp.backendcertms.basiccompnents.data.dao.service;


import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ptp.backendcertms.basiccompnents.data.dao.entity.ReportPo;

/**
 * 报告表 服务类
 */
public interface IReportService extends IService<ReportPo> {

    IPage<ReportPo> pageList(ReportPo queryPo, Integer current, Integer pageSize);

    /**
     * 保存或更新报告信息
     *
     * @param entity 报告信息
     */
    void saveOrUpdateReportInfo(ReportPo entity);

    /**
     * 管理端分页查询报告列表
     *
     * @param queryPo          查询条件（组织名称、统一社会信用代码、报告编号、报告名称）
     * @param releaseStartTime 签发开始时间
     * @param releaseEndTime   签发结束时间
     * @param current          当前页码
     * @param pageSize         每页数据量
     * @return 证书列表
     */
    IPage<ReportPo> pageListMc(ReportPo queryPo, String releaseStartTime, String releaseEndTime, Integer current, Integer pageSize);

    /**
     * 根据流水号查询报告信息
     *
     * @param serialNo 流水号
     * @return 报告信息
     */
    ReportPo getBySerialNo(String serialNo);

    /**
     * 删除报告
     * @param reportPo 请求
     */
    void deleteBySerialNo(ReportPo reportPo);

    /**
     * 编辑报告
     * @param reportPo 请求
     */
    void updateReportBySerialNo(ReportPo reportPo);

}
